package com.test.demo.main.adapter

import com.chad.library.adapter.base.BaseQuickAdapter
import com.chad.library.adapter.base.viewholder.BaseViewHolder
import com.test.demo.R
import com.test.demo.view.CustomJZVideo

/**
 * @projectName
 * @author
 * @description:
 * @date : 2023/12/18 17:23
 * @version 1.0.0
 */
class FeedListAdapter :

    BaseQuickAdapter<String, BaseViewHolder>(R.layout.item_feed_list) {
    init {
        addChildClickViewIds(
            R.id.tv_retransmission,
            R.id.layout_reve, R.id.iv_header,
            R.id.image_layout, R.id.constr_view
        )
    }

    companion object {
        val TAG = "FeedListAdapter"
    }

    var remotePlaybackWndSv: CustomJZVideo? = null
    override fun convert(holder: BaseViewHolder, item: String) {
//        val gear_text = holder.getView<NewShapeTextView>(R.id.gear_text)
//        gear_text.setStartColor(context.resources.getColor(R.color.color_E4F7DB),
//            context.resources.getColor(R.color.color_DAF7EB))
//        val ivheader = holder.getView<ImageView>(R.id.iv_header)
//        ivheader.vquLoadCircleImage(item.avatar)
//        item.nickname.let {
//            var name = StringBuffer()
//            if (it?.length!! > 8) {
//                name.append(it.substring(0, 8)).append("...")
//            } else {
//                name.append(it)
//            }
//            holder.setText(R.id.tv_name, name)
//        }
//        holder.setText(R.id.tv_time, item.created_at?.let { TimeUtil.formatTimeAgo(it?.toLong()) })
//        //性别:0未知,1女,2男
//        when (item.gender) {
//            0 -> {
//                holder.setImageResource(R.id.iv_gender, R.mipmap.ic_coach_man)
//            }
//            1 -> {
//                holder.setImageResource(R.id.iv_gender, R.mipmap.ic_coach_woman)
//            }
//            2 -> {
//                holder.setImageResource(R.id.iv_gender, R.mipmap.ic_coach_man)
//            }
//        }
//
//        item.label.let {
//            if (item.label.isNotEmpty()) {
//                holder.setGone(R.id.sdv_feed_level, true)
//                holder.setGone(R.id.sdv_level_name, false)
//                item.label.forEachIndexed { index, label ->
//                    if (label.type == 4) {
//                        label.value?.let { it1 ->
//                           if (it1.isNotEmpty()){
//                               setLevel(it1.toInt(), holder)
//                           }
//                        }
//                    } else if (label.type == 3) {
//                        val value = label.value
//                        holder.setText(R.id.tv_levels, "${value}档")
//                        if (value?.toInt()!! < 0) {
//                            holder.setGone(R.id.sdv_feed_level, true)
//                        } else {
//                            holder.setGone(R.id.sdv_feed_level, false)
//                        }
//                    }
//                }
//            } else {
//                holder.setGone(R.id.sdv_level_name, true)
//            }
//        }
//
//        holder.setText(R.id.tv_conetnt, item.content)
//        initContent(holder)
//        if (!StringUtils.isEmpty(item.city_name)) {
//            holder.setText(R.id.card_text, item.city_name)
//            holder.setGone(R.id.card_text, false)
//        } else {
//            holder.setGone(R.id.card_text, true)
//        }
//        if (UserManager.getUserBean()?.id == item.user_id) {
//            holder.setGone(R.id.tv_fllow, true)
//        } else {
//            if (item.is_follow == 1) {
//                holder.setGone(R.id.tv_fllow, true)
//            } else {
//                holder.setGone(R.id.tv_fllow, false)
//            }
//        }
//
//
//        if (item.topic != null) {
//            holder.setGone(R.id.topic_text, false)
//            item.topic.let {
//                if (!StringUtils.isEmpty(item.topic.name)) {
//                    holder.setGone(R.id.topic_text, false)
//                    holder.setText(R.id.topic_text, "${item.topic.name}")
//                } else {
//                    holder.setGone(R.id.topic_text, true)
//                }
//            }
//        } else {
//            holder.setGone(R.id.topic_text, true)
//        }
//        if (item.like_num!! > 0) {
//            holder.setText(R.id.tv_like_number, "${item.like_num}")
//        } else {
//            holder.setText(R.id.tv_like_number, "点赞")
//        }
//        if (item.comment_num == 0) {
//            holder.setText(R.id.tv_reve_number, "评论")
//        } else {
//            holder.setText(R.id.tv_reve_number, "${item.comment_num}")
//        }
//
//        //点赞事件
//        val checkBox = holder.getView<CheckBox>(R.id.ck_pinned)
//        checkBox.setOnClickListener {
//            if (item.is_status == 3) {
//                return@setOnClickListener
//            }
//            onItemclick?.onItemChild(item, holder, position = holder.adapterPosition)
//        }
//        //点赞样式 是否点赞 0否 1是
//        checkBox.isChecked = item.is_like == 1
//        setGoneImageView6(holder)
//        //图片列表
//        initImageList(item.medium, holder)
    }

//    private fun initImageList(medium: List<Medium>, holder: BaseViewHolder) {
//        if (medium.isEmpty()) {
//            return
//        }
//        val ivFeedNum = holder.getView<NewShapeTextView>(R.id.iv_feed_num)
//        ivFeedNum.text = "${medium.size}张"
//        if (medium.size == 1){
//            if (medium[0].type == 1) {
//                setGoneImageView1(holder)
//                val view = holder.getView<ConstraintLayout>(R.id.one_layout)
//                val imageView = view.findViewById<SimpleDraweeView>(R.id.iv_image)
//                imageView.loadUrl(medium[0].url)
//                imageView.setOnClickListener {
//                    lookBigImage(medium, 0)
//                }
//            } else if (medium[0].type == 2) {
//                setGoneImageView5(holder)
//                val view = holder.getView<ConstraintLayout>(R.id.five_layout)
//                remotePlaybackWndSv =
//                    view.findViewById<CustomJZVideo>(R.id.remote_playback_wnd_sv)
//                remotePlaybackWndSv?.setUp(medium[0].url, "")
//                val shopMasterPicture =
//                    medium[0].url + "?x-oss-process=video/snapshot,t_0,f_jpg,w_0,h_0,m_fast,ar_auto"
//                remotePlaybackWndSv?.posterImageView?.setImageUrl("${shopMasterPicture}")
//                remotePlaybackWndSv?.posterImageView?.setOnClickListener {
//                    onItem?.onclick(medium[0].url)
//                }
//                remotePlaybackWndSv?.textureViewContainer?.setOnClickListener {
//                    onItem?.onclick(medium[0].url)
//                }
////              remotePlaybackWndSv?.startVideo()
//            }
//        } else if (medium.size == 2){
//            setGoneImageView2(holder)
//            val view = holder.getView<ConstraintLayout>(R.id.two_layout)
//            val ivImageOne = view.findViewById<SimpleDraweeView>(R.id.iv_image_one)
//            val ivImageTwo = view.findViewById<SimpleDraweeView>(R.id.iv_image_two)
//            ivImageOne.loadUrl(medium[0].url)
//            ivImageTwo.loadUrl(medium[1].url)
//            ivImageOne.setOnClickListener {
//                lookBigImage(medium, 0)
//            }
//            ivImageOne.setOnClickListener {
//                lookBigImage(medium, 1)
//            }
//
//        } else if (medium.size == 3){
//            setGoneImageView3(holder)
//            val view = holder.getView<ConstraintLayout>(R.id.thress_layout)
//            val ivImageOne = view.findViewById<SimpleDraweeView>(R.id.iv_one)
//            val ivImageTwo = view.findViewById<SimpleDraweeView>(R.id.iv_two)
//            val ivImageThress = view.findViewById<SimpleDraweeView>(R.id.iv_thress)
//            ivImageOne.loadUrl(medium[0].url)
//            ivImageTwo.loadUrl(medium[1].url)
//            ivImageThress.loadUrl(medium[2].url)
//            ivImageOne.setOnClickListener {
//                lookBigImage(medium, 0)
//            }
//            ivImageTwo.setOnClickListener {
//                lookBigImage(medium, 1)
//            }
//            ivImageThress.setOnClickListener {
//                lookBigImage(medium, 2)
//            }
//        } else {
//            setGoneImageView4(holder)
//            val view = holder.getView<ConstraintLayout>(R.id.thress_layout)
//            val ivImageOne = view.findViewById<SimpleDraweeView>(R.id.iv_one)
//            val ivImageTwo = view.findViewById<SimpleDraweeView>(R.id.iv_two)
//            val ivImageThress = view.findViewById<SimpleDraweeView>(R.id.iv_thress)
//            ivImageOne.setOnClickListener {
//                lookBigImage(medium, 0)
//            }
//            ivImageTwo.setOnClickListener {
//                lookBigImage(medium, 1)
//            }
//            ivImageThress.setOnClickListener {
//                lookBigImage(medium, 2)
//            }
//            ivImageOne.loadUrl(medium[0].url)
//            ivImageTwo.loadUrl(medium[1].url)
//            ivImageThress.loadUrl(medium[2].url)
//        }

}

/**
 * imagelist隐藏
 */
//    fun setGoneImageView1(holder: BaseViewHolder) {
//        holder.setGone(R.id.one_layout, false)
//        holder.setGone(R.id.two_layout, true)
//        holder.setGone(R.id.thress_layout, true)
//        holder.setGone(R.id.iv_feed_num, true)
//        holder.setGone(R.id.five_layout, true)
//    }
//
//    fun setGoneImageView2(holder: BaseViewHolder) {
//        holder.setGone(R.id.one_layout, true)
//        holder.setGone(R.id.two_layout, false)
//        holder.setGone(R.id.thress_layout, true)
//        holder.setGone(R.id.iv_feed_num, true)
//        holder.setGone(R.id.five_layout, true)
//    }
//
//    fun setGoneImageView3(holder: BaseViewHolder) {
//        holder.setGone(R.id.one_layout, true)
//        holder.setGone(R.id.two_layout, true)
//        holder.setGone(R.id.thress_layout, false)
//        holder.setGone(R.id.iv_feed_num, true)
//        holder.setGone(R.id.five_layout, true)
//    }
//
//    fun setGoneImageView4(holder: BaseViewHolder) {
//        holder.setGone(R.id.one_layout, true)
//        holder.setGone(R.id.two_layout, true)
//        holder.setGone(R.id.thress_layout, false)
//        holder.setGone(R.id.iv_feed_num, false)
//        holder.setGone(R.id.five_layout, true)
//    }
//
//    fun setGoneImageView5(holder: BaseViewHolder) {
//        holder.setGone(R.id.one_layout, true)
//        holder.setGone(R.id.two_layout, true)
//        holder.setGone(R.id.thress_layout, true)
//        holder.setGone(R.id.iv_feed_num, true)
//        holder.setGone(R.id.five_layout, false)
//    }
//
//    fun setGoneImageView6(holder: BaseViewHolder) {
//        holder.setGone(R.id.one_layout, true)
//        holder.setGone(R.id.two_layout, true)
//        holder.setGone(R.id.thress_layout, true)
//        holder.setGone(R.id.iv_feed_num, true)
//        holder.setGone(R.id.five_layout, true)
//    }
//
//    private fun initContent(holder: BaseViewHolder) {
//        val tvConetnt = holder.getView<TextView>(R.id.tv_conetnt)
//        val tvUnfold = holder.getView<TextView>(R.id.tv_unfold)
//        //字数设置
//        tvConetnt.post {
//            val lineCount: Int = tvConetnt.lineCount
//            // 如果行数大于指定的最大行数，显示展开按钮，否则隐藏
//            tvUnfold.visibility = if (lineCount >= 3) View.VISIBLE else View.GONE
//            if (lineCount >= 3) {
//                tvConetnt.maxLines = 3
//                tvConetnt.ellipsize = TextUtils.TruncateAt.END
//            }
//        }
//        tvUnfold.setOnClickListener {
//            // 切换 TextView 的最大行数，实现展开和收起效果
//            tvConetnt.maxLines = if (tvConetnt.maxLines == 3) Int.MAX_VALUE else 3
//            // 更新按钮文本
//            tvUnfold.text = if (tvConetnt.maxLines == 3) "展开" else "收起"
//        }
//    }


/**
 * 查看大图
 */
//    fun lookBigImage(medium: List<Medium>, position: Int) {
//        //查看大图
//        var beanList: MutableList<BilliardsBannerInfoBean> = mutableListOf()
//        medium.forEachIndexed { index, item ->
//            item.url?.let { BilliardsBannerInfoBean(0, it, 1) }?.let { beanList.add(it) }
//        }
//        ViewPager2Activity.startNetUrl(context, beanList, position)
//    }
//
//    interface onItemChlidListener {
//        fun onItemChild(bean: FeedDetailsChildBean, holder: BaseViewHolder, position: Int)
//        //获取播放器对象
////        fun  getVideoObject(standardGSYVideoPlayer: StandardGSYVideoPlayer)
//    }
//
//    var onItemclick: onItemChlidListener? = null
//
//
//    fun setOnItemChild(onItemclick1: onItemChlidListener) {
//        this.onItemclick = onItemclick1
//    }
//
//    fun dp2px(dp: Int): Int {
//        val scale = context.resources.displayMetrics.density
//        return (dp * scale + 0.5f).toInt()
//    }
//
//    fun getGSYVideoPlayer(): CustomJZVideo? {
//        return remotePlaybackWndSv
//    }
//
//
//    fun getTestPath(): String? {
//        val path = FileUtils.getAppPath(FileUtils.NAME_TEST)
//        val file = File(path)
//        if (!file.exists()) {
//            file.mkdirs()
//        }
//        return path
//    }
//
//    interface onItem1111 {
//        fun onclick(url: String?)
//    }
//
//    var onItem: onItem1111? = null
//
//    fun setItem(onItem1: onItem1111) {
//        this.onItem = onItem1
//    }

//}